﻿using System.Collections.Generic;
using WPFSchematics.Definition.Common;

namespace OPSYS_Schematic.ShapeFoundation
{
    /*******************************************************************
     * * 文件名称：ToolCommandCache.cs
     * * 功   能：管理菜单等工具的Command
     * * 作   者：yuananyun
     * * 创建日期：2012年3月20日
     * * 修改日期：
     * * 修改人：
     * *******************************************************************/

    public class ToolCommandCache
    {
        public static Dictionary<string, ICommandShell> CommandDictionary = new Dictionary<string, ICommandShell>();

        /// <summary>
        /// 通过key查找CommandShell
        /// </summary>
        /// <param name="key"></param>
        /// <returns></returns>
        public static ICommandShell GetCommandShell(string key)
        {
            ICommandShell commandShell;
            if (CommandDictionary.TryGetValue(key, out commandShell))
            {
                return commandShell;
            }
            return null;
        }

        /// <summary>
        /// 缓存命令
        /// </summary>
        /// <param name="Key"></param>
        /// <param name="?"></param>
        /// <returns></returns>
        public static void SetCommandShell(string Key, ICommandShell commandShell)
        {
            if (CommandDictionary.ContainsKey(Key)) return;
            CommandDictionary.Add(Key, commandShell);
        }
    }
}